home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / asmutil / disasm.zip / POKEPEEK.DOC < prev    next >
Text File  |  1988-06-03  |  4KB  |  79 lines

  1.      Did you know that ... there is a lot of information that may be accessed
  2. from the ROM BIOS area in your IBM PC, regarding the operating characteristics
  3. and options found on your own IBM PC? After careful analysis of data found in
  4. the IBM Technical Reference manual a summary of the most useful information and
  5. where/how it may be referenced has been prepared.
  6.  
  7.      By specifying a DEF SEG=&H40 in any BASIC program, it is possible to
  8. reference the following vectors (fields) in the ROM BIOS area by using a PEEK
  9. function and the following offsets from the current segment as defined by the
  10. DEF SEG statement.
  11.  
  12.      &H0       -  RS232 Addresses on your IBM PC.
  13.                   This will allow you to tell how many (up to
  14.                   four) async cards are attached, if any.
  15.      &H8       -  Printer Addresses on your IBM PC.
  16.                   This will tell you what printer addresses,
  17.                   and how many (up to four) exist. Each is
  18.                   addressed by a two byte Hex value.
  19.      &H10      -  Equipment Flag.
  20.                   This field describes the setting of the
  21.                   options switches. It describes what optional
  22.                   devices are attached to the system. The
  23.                   following lists the bit-significance of this
  24.  
  25.              field:
  26.                   Bit 0 - indicates that there are diskette
  27.                           drives on the system.
  28.                   Bit 1 - not used.
  29.                   Bit 2,3 - Planar Ram Size (00=16K 10=32K 01=48K
  30.                             11=64K)
  31.                   Bit 4,5 - Initial Video Mode (00=Unused
  32.                                                 10=40x25 Color
  33.                                                 01=80x25 Color
  34.                                                 11=80x25 Mono)
  35.                   Bit 6,7 - Number of Diskette Drives (00=1 10=2
  36.                             01=3 11=4) only if bit 0 = 1.
  37.                   Bit 8   - Unused
  38.                   Bit 9,10,11 - Number of RS232 Cards attached
  39.                   Bit 12  - Game I/O Attached
  40.                   Bit 13  - Not used
  41.                   Bit 14,15   - Number of printers attached
  42.      &H13      -  Memory Size in K bytes.
  43.      &H15      -  I/O RAM Size in K bytes.
  44.      &H17      -  Keyboard Flag -- the following lists the masks
  45.                   set to describe current keyboard status:
  46.                   Byte 1;
  47.                   &H80 - Insert state active
  48.                   &H40 - Caps Lock State Has been toggled
  49.                   &H20 - Num Lock State has been toggled
  50.                   &H10 - Scroll Lock State has been toggled
  51.                   &H08 - Alternate Shift key depressed
  52.                   &H04 - Control Shift key depressed
  53.                   &H02 - Left Shift key depressed
  54.                   &H01 - Right Shift key depressed
  55.                   Byte 2;
  56.                   &H80 - Insert Key is depressed
  57.                   &H40 - Caps Lock Key is depressed
  58.                   &H20 - Num Lock Key is depressed
  59.                   &H10 - Scroll Lock key is depressed
  60.                   &H08 - Suspend key has been toggled
  61.      &H49      -  Current CRT mode
  62.                   &H00 - 40x25 BW
  63.                   &H01 - 40x25 Color
  64.                   &H02 - 80x25 BW
  65.                   &H03 - 80x25 Color
  66.                   &H04 - 320x200 Color
  67.                   &H05 - 320x200 BW
  68.                   &H06 - 640x200 BW
  69.                   &H07 - 80x25 B&W Card -- specialized use, used
  70.                          internal to the video routines.
  71.      &H4A      -  Number of CRT columns
  72.      &H50      -  Cursor Position (one of eight)
  73.      &H60      -  Current cursor mode
  74.      &H6C      -  Low word of Timer count
  75.      &H6E      -  High word of Timer count
  76.      &H71      -  &H07 - Break key depressed
  77.      &HFA6E    -  Beginning of character regen memory
  78.      &HFF53    -  PRTSC routine address
  79.